// 使用异或运算和与运算的特点
class Solution {
    public int getSum(int a, int b) {
        while(b != 0) { // 当进位值b变为0时，说明没有更多进位需要处理，此时a就是最终的和
            int x = a ^ b; // 等同于不考虑进位的和
            int carry = (a & b) << 1; // 计算的是进位值
            a = x;
            b = carry;
        }
        return a;
    }
}